package com.define.ssh.util;

import java.io.File;

public class FileHelper {

	// ez,application/andrew-inset
	// hqx,application/mac-binhex40
	// cpt,application/mac-compactpro
	// doc,application/msword
	// bin,application/octet-stream
	// dms,application/octet-stream
	// lha,application/octet-stream
	// lzh,application/octet-stream
	// exe,application/octet-stream
	// class,application/octet-stream
	// so,application/octet-stream
	// dll,application/octet-stream
	// oda,application/oda
	// pdf,application/pdf
	// ai,application/postscript
	// eps,application/postscript
	// ps,application/postscript
	// smi,application/smil
	// smil,application/smil
	// mif,application/vnd.mif
	// xls,application/vnd.ms-excel
	// ppt,application/vnd.ms-powerpoint
	// wbxml,application/vnd.wap.wbxml
	// wmlc,application/vnd.wap.wmlc
	// wmlsc,application/vnd.wap.wmlscriptc
	// bcpio,application/x-bcpio
	// vcd,application/x-cdlink
	// pgn,application/x-chess-pgn
	// cpio,application/x-cpio
	// csh,application/x-csh
	// dcr,application/x-director
	// dir,application/x-director
	// dxr,application/x-director
	// dvi,application/x-dvi
	// spl,application/x-futuresplash
	// gtar,application/x-gtar
	// hdf,application/x-hdf
	// js,application/x-javascript,
	// skp,application/x-koan
	// skd,application/x-koan
	// skt,application/x-koan
	// skm,application/x-koan
	// latex,application/x-latex
	// nc,application/x-netcdf
	// cdf,application/x-netcdf
	// sh,application/x-sh
	// shar,application/x-shar
	// swf,application/x-shockwave-flash
	// sit,application/x-stuffit
	// sv4cpio,application/x-sv4cpio
	// sv4crc,application/x-sv4crc
	// tar,application/x-tar
	// tcl,application/x-tcl
	// tex,application/x-tex
	// texinfo,application/x-texinfo
	// texi,application/x-texinfo
	// t,application/x-troff
	// tr,application/x-troff
	// roff,application/x-troff
	// man,application/x-troff-man
	// me,application/x-troff-me
	// ms,application/x-troff-ms
	// ustar,application/x-ustar
	// src,application/x-wais-source
	// xhtml,application/xhtml+xml
	// xht,application/xhtml+xml
	// zip,application/zip
	// au,audio/basic
	// snd,audio/basic
	// mid,audio/midi
	// midi,audio/midi
	// kar,audio/midi
	// mpga,audio/mpeg
	// mp2,audio/mpeg
	// mp3,audio/mpeg
	// aif,audio/x-aiff
	// aiff,audio/x-aiff
	// aifc,audio/x-aiff
	// m3u,audio/x-mpegurl
	// ram,audio/x-pn-realaudio
	// rm,audio/x-pn-realaudio
	// rpm,audio/x-pn-realaudio-plugin
	// ra,audio/x-realaudio
	// wav,audio/x-wav
	// pdb,chemical/x-pdb
	// xyz,chemical/x-xyz
	// bmp,image/bmp
	// gif,image/gif
	// ief,image/ief
	// jpeg,image/jpeg
	// jpg,image/jpeg
	// jpe,image/jpeg
	// png,image/png
	// tiff,image/tiff
	// tif,image/tiff
	// djvu,image/vnd.djvu
	// djv,image/vnd.djvu
	// wbmp,image/vnd.wap.wbmp
	// ras,image/x-cmu-raster
	// pnm,image/x-portable-anymap
	// pbm,image/x-portable-bitmap
	// pgm,image/x-portable-graymap
	// ppm,image/x-portable-pixmap
	// rgb,image/x-rgb
	// xbm,image/x-xbitmap
	// xpm,image/x-xpixmap
	// xwd,image/x-xwindowdump
	// igs,model/iges
	// iges,model/iges
	// msh,model/mesh
	// mesh,model/mesh
	// silo,model/mesh
	// wrl,model/vrml
	// vrml,model/vrml
	// css,text/css
	// html,text/html
	// htm,text/html
	// asc,text/plain
	// txt,text/plain
	// rtx,text/richtext
	// rtf,text/rtf
	// sgml,text/sgml
	// sgm,text/sgml
	// tsv,text/tab-separated-values
	// wml,text/vnd.wap.wml
	// wmls,text/vnd.wap.wmlscript
	// etx,text/x-setext
	// xsl,text/xml
	// xml,text/xml
	// mpeg,video/mpeg
	// mpg,video/mpeg
	// mpe,video/mpeg
	// qt,video/quicktime
	// mov,video/quicktime
	// mxu,video/vnd.mpegurl
	// avi,video/x-msvideo
	// movie,video/x-sgi-movie
	// ice,x-conference/x-cooltalk

	private static final String[] kyes = { "doc", "exe", "dll", "pdf", "xls",
			"ppt", "js", "swf", "zip", "mp3", "pdb", "bmp", "gif", "jpeg",
			"jpg", "jpe", "png", "tiff", "tif", "css", "html", "htm", "txt",
			"xsl", "xml", "pps", "ppt" };
	private static final String[] values = { "application/msword",
			"application/octet-stream", "application/octet-stream",
			"application/pdf", "application/vnd.ms-excel",
			"application/vnd.ms-powerpoint", "application/x-javascript",
			"application/x-shockwave-flash", "application/zip", "audio/mpeg",
			"chemical/x-pdb", "image/bmp", "image/gif", "image/jpeg",
			"image/jpeg", "image/jpeg", "image/png", "image/tiff",
			"image/tiff", "text/css", "text/html", "text/html", "text/plain",
			"application/-excel", "text/xml", "application-powerpoint",
			"applications-powerpoint" };

	/**
	 * 根据文件名称或路径取得文件类型，并返回类型名（包含. 如.jpg）
	 * 
	 * @param fileName
	 * @return
	 */
	public static String getFileType(String fileName) {
		if (fileName != null && !fileName.equals("")) {
			fileName = fileName.toLowerCase();
			final int a = fileName.lastIndexOf(".");
			fileName = fileName.substring(a);
			return fileName;
		} else
			return null;
	}

	/**
	 * 
	 * @param fileName
	 * @return
	 */
	public static String getContextType(String fileName) {
		final String type = getFileType(fileName.toLowerCase());
		String vv = "application/octet-stream";// 无限制
		for (int i = 0; i < kyes.length; i++) {
			final String kye = kyes[i];
			if (type.equals("." + kye)) {
				vv = values[i];
				break;
			}
		}
		return vv;
	}

	public static void getFiles(String dir) {
		final File file = new File(dir);
		// file.l
	}

	public static void main(String[] args) {
		System.out.println();
	}
}
